Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.4.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## java.beans.beancontext
Interface BeanContext

All Superinterfaces:
  BeanContextChild, Collection, DesignMode, Visibility

All Known Subinterfaces:
  BeanContextServices

All Known Implementing Classes:
  BeanContextServicesSupport, BeanContextSupport

public interface BeanContext
extends BeanContextChild, Collection, DesignMode, Visibility

The BeanContext acts a logical hierarchical container for JavaBeans.

Since:
  1.2

Field Summary
`static Object` | `globalHierarchyLock` This global lock is used by both `BeanContext` and `BeanContextServices` implementors to serialize changes in a `BeanContext` hierarchy and any service requests etc.

Fields inherited from interface java.beans.DesignMode
`PROPERTYNAME`

Method Summary
`void` | `addBeanContextMembershipListener(BeanContextMembershipListener bcml)` Adds the specified `BeanContextMembershipListener` to receive `BeanContextMembershipEvents` from this `BeanContext` whenever it adds or removes a child `Component`(s).
`URL` | `getResource(String name, BeanContextChild bcc)` Analagous to `java.lang.ClassLoader.getResource()`, this method allows a `BeanContext` implementation to interpose behavior between the child `Component` and underlying `ClassLoader`.
`InputStream` | `getResourceAsStream(String name, BeanContextChild bcc)` Analagous to `java.lang.ClassLoader.getResourceAsStream()`, this method allows a `BeanContext` implementation to interpose behavior between the child `Component` and underlying `ClassLoader`.
`Object` | `instantiateChild(String beanName)` Instantiate the javaBean named as a child of this `BeanContext`.
`void` | `removeBeanContextMembershipListener(BeanContextMembershipListener bcml)` Removes the specified `BeanContextMembershipListener` so that it no longer receives `BeanContextMembershipEvent`s when the child `Component`(s) are added or removed.

Methods inherited from interface java.beans.beancontext.BeanContextChild
`addPropertyChangeListener, addVetoableChangeListener, getBeanContext, removePropertyChangeListener, removeVetoableChangeListener, setBeanContext`

Methods inherited from interface java.util.Collection
`add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray`

Methods inherited from interface java.beans.DesignMode
`isDesignTime, setDesignTime`

Methods inherited from interface java.beans.Visibility
`avoidingGui, dontUseGui, needsGui, okToUseGui`

Field Detail

### globalHierarchyLock

    public static final Object globalHierarchyLock

  This global lock is used by both `BeanContext` and `BeanContextServices` implementors to serialize changes in a `BeanContext` hierarchy and any service requests etc.

Method Detail

### instantiateChild

    public Object instantiateChild(String beanName)
                            throws IOException,
                                   ClassNotFoundException

  Instantiate the javaBean named as a child of this `BeanContext`. The implementation of the JavaBean is derived from the value of the beanName parameter, and is defined by the `java.beans.Beans.instantiate()` method.

  Parameters:
    `beanName` - The name of the JavaBean to instantiate as a child of this `BeanContext`
  Throws:
    ``IOException``
    ``ClassNotFoundException`` - if the class identified by the beanName parameter is not found
    `IOException`
    `ClassNotFoundException`

### getResourceAsStream

    public InputStream getResourceAsStream(String name,
                                           BeanContextChild bcc)
                                    throws IllegalArgumentException

  Analagous to `java.lang.ClassLoader.getResourceAsStream()`, this method allows a `BeanContext` implementation to interpose behavior between the child `Component` and underlying `ClassLoader`.

  Parameters:
    `name` - the resource name
    `bcc` - the specified child
  Returns:
    an `InputStream` for reading the resource, or `null` if the resource could not be found.
  Throws:
    ``IllegalArgumentException`` - if the resource is not valid
    `IllegalArgumentException`

### getResource

    public URL getResource(String name,
                           BeanContextChild bcc)
                    throws IllegalArgumentException

  Analagous to `java.lang.ClassLoader.getResource()`, this method allows a `BeanContext` implementation to interpose behavior between the child `Component` and underlying `ClassLoader`.

  Parameters:
    `name` - the resource name
    `bcc` - the specified child
  Returns:
    a `URL` for the named resource for the specified child
  Throws:
    ``IllegalArgumentException`` - if the resource is not valid
    `IllegalArgumentException`

### addBeanContextMembershipListener

    public void addBeanContextMembershipListener(BeanContextMembershipListener bcml)

  Adds the specified `BeanContextMembershipListener` to receive `BeanContextMembershipEvents` from this `BeanContext` whenever it adds or removes a child `Component`(s).

  Parameters:
    `bcml` - the `BeanContextMembershipListener` to be added

### removeBeanContextMembershipListener

    public void removeBeanContextMembershipListener(BeanContextMembershipListener bcml)

  Removes the specified `BeanContextMembershipListener` so that it no longer receives `BeanContextMembershipEvent`s when the child `Component`(s) are added or removed.

  Parameters:
    `bcml` - the `BeanContextMembershipListener` to be removed

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.4.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Java, Java 2D, and JDBC are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.